home *** CD-ROM | disk | FTP | other *** search
/ Personal Computer World 2009 February / PCWFEB09.iso / Software / Linux / SLAX 6.0.8 / slax-6.0.8.iso / slax / base / 006-devel.lzm / usr / include / xcb / shape.h < prev    next >
Encoding:
C/C++ Source or Header  |  2008-09-17  |  33.5 KB  |  1,077 lines

  1. /*
  2.  * This file generated automatically from shape.xml by c-client.xsl using XSLT.
  3.  * Edit at your peril.
  4.  */
  5.  
  6. /**
  7.  * @defgroup XCB_Shape_API XCB Shape API
  8.  * @brief Shape XCB Protocol Implementation.
  9.  * @{
  10.  **/
  11.  
  12. #ifndef __SHAPE_H
  13. #define __SHAPE_H
  14.  
  15. #include "xcb.h"
  16. #include "xproto.h"
  17.  
  18. #define XCB_SHAPE_MAJOR_VERSION 1
  19. #define XCB_SHAPE_MINOR_VERSION 1
  20.   
  21. extern xcb_extension_t xcb_shape_id;
  22.  
  23. typedef uint8_t xcb_shape_op_t;
  24.  
  25. /**
  26.  * @brief xcb_shape_op_iterator_t
  27.  **/
  28. typedef struct xcb_shape_op_iterator_t {
  29.     xcb_shape_op_t *data; /**<  */
  30.     int             rem; /**<  */
  31.     int             index; /**<  */
  32. } xcb_shape_op_iterator_t;
  33.  
  34. typedef uint8_t xcb_shape_kind_t;
  35.  
  36. /**
  37.  * @brief xcb_shape_kind_iterator_t
  38.  **/
  39. typedef struct xcb_shape_kind_iterator_t {
  40.     xcb_shape_kind_t *data; /**<  */
  41.     int               rem; /**<  */
  42.     int               index; /**<  */
  43. } xcb_shape_kind_iterator_t;
  44.  
  45. typedef enum xcb_shape_so_t {
  46.     XCB_SHAPE_SO_SET,
  47.     XCB_SHAPE_SO_UNION,
  48.     XCB_SHAPE_SO_INTERSECT,
  49.     XCB_SHAPE_SO_SUBTRACT,
  50.     XCB_SHAPE_SO_INVERT
  51. } xcb_shape_so_t;
  52.  
  53. typedef enum xcb_shape_sk_t {
  54.     XCB_SHAPE_SK_BOUNDING,
  55.     XCB_SHAPE_SK_CLIP,
  56.     XCB_SHAPE_SK_INPUT
  57. } xcb_shape_sk_t;
  58.  
  59. /** Opcode for xcb_shape_notify. */
  60. #define XCB_SHAPE_NOTIFY 0
  61.  
  62. /**
  63.  * @brief xcb_shape_notify_event_t
  64.  **/
  65. typedef struct xcb_shape_notify_event_t {
  66.     uint8_t          response_type; /**<  */
  67.     xcb_shape_kind_t shape_kind; /**<  */
  68.     uint16_t         sequence; /**<  */
  69.     xcb_window_t     affected_window; /**<  */
  70.     int16_t          extents_x; /**<  */
  71.     int16_t          extents_y; /**<  */
  72.     uint16_t         extents_width; /**<  */
  73.     uint16_t         extents_height; /**<  */
  74.     xcb_timestamp_t  server_time; /**<  */
  75.     uint8_t          shaped; /**<  */
  76. } xcb_shape_notify_event_t;
  77.  
  78. /**
  79.  * @brief xcb_shape_query_version_cookie_t
  80.  **/
  81. typedef struct xcb_shape_query_version_cookie_t {
  82.     unsigned int sequence; /**<  */
  83. } xcb_shape_query_version_cookie_t;
  84.  
  85. /** Opcode for xcb_shape_query_version. */
  86. #define XCB_SHAPE_QUERY_VERSION 0
  87.  
  88. /**
  89.  * @brief xcb_shape_query_version_request_t
  90.  **/
  91. typedef struct xcb_shape_query_version_request_t {
  92.     uint8_t  major_opcode; /**<  */
  93.     uint8_t  minor_opcode; /**<  */
  94.     uint16_t length; /**<  */
  95. } xcb_shape_query_version_request_t;
  96.  
  97. /**
  98.  * @brief xcb_shape_query_version_reply_t
  99.  **/
  100. typedef struct xcb_shape_query_version_reply_t {
  101.     uint8_t  response_type; /**<  */
  102.     uint8_t  pad0; /**<  */
  103.     uint16_t sequence; /**<  */
  104.     uint32_t length; /**<  */
  105.     uint16_t major_version; /**<  */
  106.     uint16_t minor_version; /**<  */
  107. } xcb_shape_query_version_reply_t;
  108.  
  109. /** Opcode for xcb_shape_rectangles. */
  110. #define XCB_SHAPE_RECTANGLES 1
  111.  
  112. /**
  113.  * @brief xcb_shape_rectangles_request_t
  114.  **/
  115. typedef struct xcb_shape_rectangles_request_t {
  116.     uint8_t          major_opcode; /**<  */
  117.     uint8_t          minor_opcode; /**<  */
  118.     uint16_t         length; /**<  */
  119.     xcb_shape_op_t   operation; /**<  */
  120.     xcb_shape_kind_t destination_kind; /**<  */
  121.     uint8_t          ordering; /**<  */
  122.     uint8_t          pad0; /**<  */
  123.     xcb_window_t     destination_window; /**<  */
  124.     int16_t          x_offset; /**<  */
  125.     int16_t          y_offset; /**<  */
  126. } xcb_shape_rectangles_request_t;
  127.  
  128. /** Opcode for xcb_shape_mask. */
  129. #define XCB_SHAPE_MASK 2
  130.  
  131. /**
  132.  * @brief xcb_shape_mask_request_t
  133.  **/
  134. typedef struct xcb_shape_mask_request_t {
  135.     uint8_t          major_opcode; /**<  */
  136.     uint8_t          minor_opcode; /**<  */
  137.     uint16_t         length; /**<  */
  138.     xcb_shape_op_t   operation; /**<  */
  139.     xcb_shape_kind_t destination_kind; /**<  */
  140.     uint8_t          pad0[2]; /**<  */
  141.     xcb_window_t     destination_window; /**<  */
  142.     int16_t          x_offset; /**<  */
  143.     int16_t          y_offset; /**<  */
  144.     xcb_pixmap_t     source_bitmap; /**<  */
  145. } xcb_shape_mask_request_t;
  146.  
  147. /** Opcode for xcb_shape_combine. */
  148. #define XCB_SHAPE_COMBINE 3
  149.  
  150. /**
  151.  * @brief xcb_shape_combine_request_t
  152.  **/
  153. typedef struct xcb_shape_combine_request_t {
  154.     uint8_t          major_opcode; /**<  */
  155.     uint8_t          minor_opcode; /**<  */
  156.     uint16_t         length; /**<  */
  157.     xcb_shape_op_t   operation; /**<  */
  158.     xcb_shape_kind_t destination_kind; /**<  */
  159.     xcb_shape_kind_t source_kind; /**<  */
  160.     uint8_t          pad0; /**<  */
  161.     xcb_window_t     destination_window; /**<  */
  162.     int16_t          x_offset; /**<  */
  163.     int16_t          y_offset; /**<  */
  164.     xcb_window_t     source_window; /**<  */
  165. } xcb_shape_combine_request_t;
  166.  
  167. /** Opcode for xcb_shape_offset. */
  168. #define XCB_SHAPE_OFFSET 4
  169.  
  170. /**
  171.  * @brief xcb_shape_offset_request_t
  172.  **/
  173. typedef struct xcb_shape_offset_request_t {
  174.     uint8_t          major_opcode; /**<  */
  175.     uint8_t          minor_opcode; /**<  */
  176.     uint16_t         length; /**<  */
  177.     xcb_shape_kind_t destination_kind; /**<  */
  178.     uint8_t          pad0[3]; /**<  */
  179.     xcb_window_t     destination_window; /**<  */
  180.     int16_t          x_offset; /**<  */
  181.     int16_t          y_offset; /**<  */
  182. } xcb_shape_offset_request_t;
  183.  
  184. /**
  185.  * @brief xcb_shape_query_extents_cookie_t
  186.  **/
  187. typedef struct xcb_shape_query_extents_cookie_t {
  188.     unsigned int sequence; /**<  */
  189. } xcb_shape_query_extents_cookie_t;
  190.  
  191. /** Opcode for xcb_shape_query_extents. */
  192. #define XCB_SHAPE_QUERY_EXTENTS 5
  193.  
  194. /**
  195.  * @brief xcb_shape_query_extents_request_t
  196.  **/
  197. typedef struct xcb_shape_query_extents_request_t {
  198.     uint8_t      major_opcode; /**<  */
  199.     uint8_t      minor_opcode; /**<  */
  200.     uint16_t     length; /**<  */
  201.     xcb_window_t destination_window; /**<  */
  202. } xcb_shape_query_extents_request_t;
  203.  
  204. /**
  205.  * @brief xcb_shape_query_extents_reply_t
  206.  **/
  207. typedef struct xcb_shape_query_extents_reply_t {
  208.     uint8_t  response_type; /**<  */
  209.     uint8_t  pad0; /**<  */
  210.     uint16_t sequence; /**<  */
  211.     uint32_t length; /**<  */
  212.     uint8_t  bounding_shaped; /**<  */
  213.     uint8_t  clip_shaped; /**<  */
  214.     uint8_t  pad1[2]; /**<  */
  215.     int16_t  bounding_shape_extents_x; /**<  */
  216.     int16_t  bounding_shape_extents_y; /**<  */
  217.     uint16_t bounding_shape_extents_width; /**<  */
  218.     uint16_t bounding_shape_extents_height; /**<  */
  219.     int16_t  clip_shape_extents_x; /**<  */
  220.     int16_t  clip_shape_extents_y; /**<  */
  221.     uint16_t clip_shape_extents_width; /**<  */
  222.     uint16_t clip_shape_extents_height; /**<  */
  223. } xcb_shape_query_extents_reply_t;
  224.  
  225. /** Opcode for xcb_shape_select_input. */
  226. #define XCB_SHAPE_SELECT_INPUT 6
  227.  
  228. /**
  229.  * @brief xcb_shape_select_input_request_t
  230.  **/
  231. typedef struct xcb_shape_select_input_request_t {
  232.     uint8_t      major_opcode; /**<  */
  233.     uint8_t      minor_opcode; /**<  */
  234.     uint16_t     length; /**<  */
  235.     xcb_window_t destination_window; /**<  */
  236.     uint8_t      enable; /**<  */
  237. } xcb_shape_select_input_request_t;
  238.  
  239. /**
  240.  * @brief xcb_shape_input_selected_cookie_t
  241.  **/
  242. typedef struct xcb_shape_input_selected_cookie_t {
  243.     unsigned int sequence; /**<  */
  244. } xcb_shape_input_selected_cookie_t;
  245.  
  246. /** Opcode for xcb_shape_input_selected. */
  247. #define XCB_SHAPE_INPUT_SELECTED 7
  248.  
  249. /**
  250.  * @brief xcb_shape_input_selected_request_t
  251.  **/
  252. typedef struct xcb_shape_input_selected_request_t {
  253.     uint8_t      major_opcode; /**<  */
  254.     uint8_t      minor_opcode; /**<  */
  255.     uint16_t     length; /**<  */
  256.     xcb_window_t destination_window; /**<  */
  257. } xcb_shape_input_selected_request_t;
  258.  
  259. /**
  260.  * @brief xcb_shape_input_selected_reply_t
  261.  **/
  262. typedef struct xcb_shape_input_selected_reply_t {
  263.     uint8_t  response_type; /**<  */
  264.     uint8_t  enabled; /**<  */
  265.     uint16_t sequence; /**<  */
  266.     uint32_t length; /**<  */
  267. } xcb_shape_input_selected_reply_t;
  268.  
  269. /**
  270.  * @brief xcb_shape_get_rectangles_cookie_t
  271.  **/
  272. typedef struct xcb_shape_get_rectangles_cookie_t {
  273.     unsigned int sequence; /**<  */
  274. } xcb_shape_get_rectangles_cookie_t;
  275.  
  276. /** Opcode for xcb_shape_get_rectangles. */
  277. #define XCB_SHAPE_GET_RECTANGLES 8
  278.  
  279. /**
  280.  * @brief xcb_shape_get_rectangles_request_t
  281.  **/
  282. typedef struct xcb_shape_get_rectangles_request_t {
  283.     uint8_t          major_opcode; /**<  */
  284.     uint8_t          minor_opcode; /**<  */
  285.     uint16_t         length; /**<  */
  286.     xcb_window_t     window; /**<  */
  287.     xcb_shape_kind_t source_kind; /**<  */
  288. } xcb_shape_get_rectangles_request_t;
  289.  
  290. /**
  291.  * @brief xcb_shape_get_rectangles_reply_t
  292.  **/
  293. typedef struct xcb_shape_get_rectangles_reply_t {
  294.     uint8_t  response_type; /**<  */
  295.     uint8_t  ordering; /**<  */
  296.     uint16_t sequence; /**<  */
  297.     uint32_t length; /**<  */
  298.     uint32_t rectangles_len; /**<  */
  299. } xcb_shape_get_rectangles_reply_t;
  300.  
  301. /**
  302.  * Get the next element of the iterator
  303.  * @param i Pointer to a xcb_shape_op_iterator_t
  304.  *
  305.  * Get the next element in the iterator. The member rem is
  306.  * decreased by one. The member data points to the next
  307.  * element. The member index is increased by sizeof(xcb_shape_op_t)
  308.  */
  309.  
  310. /*****************************************************************************
  311.  **
  312.  ** void xcb_shape_op_next
  313.  ** 
  314.  ** @param xcb_shape_op_iterator_t *i
  315.  ** @returns void
  316.  **
  317.  *****************************************************************************/
  318.  
  319. void
  320. xcb_shape_op_next (xcb_shape_op_iterator_t *i  /**< */);
  321.  
  322. /**
  323.  * Return the iterator pointing to the last element
  324.  * @param i An xcb_shape_op_iterator_t
  325.  * @return  The iterator pointing to the last element
  326.  *
  327.  * Set the current element in the iterator to the last element.
  328.  * The member rem is set to 0. The member data points to the
  329.  * last element.
  330.  */
  331.  
  332. /*****************************************************************************
  333.  **
  334.  ** xcb_generic_iterator_t xcb_shape_op_end
  335.  ** 
  336.  ** @param xcb_shape_op_iterator_t i
  337.  ** @returns xcb_generic_iterator_t
  338.  **
  339.  *****************************************************************************/
  340.  
  341. xcb_generic_iterator_t
  342. xcb_shape_op_end (xcb_shape_op_iterator_t i  /**< */);
  343.  
  344. /**
  345.  * Get the next element of the iterator
  346.  * @param i Pointer to a xcb_shape_kind_iterator_t
  347.  *
  348.  * Get the next element in the iterator. The member rem is
  349.  * decreased by one. The member data points to the next
  350.  * element. The member index is increased by sizeof(xcb_shape_kind_t)
  351.  */
  352.  
  353. /*****************************************************************************
  354.  **
  355.  ** void xcb_shape_kind_next
  356.  ** 
  357.  ** @param xcb_shape_kind_iterator_t *i
  358.  ** @returns void
  359.  **
  360.  *****************************************************************************/
  361.  
  362. void
  363. xcb_shape_kind_next (xcb_shape_kind_iterator_t *i  /**< */);
  364.  
  365. /**
  366.  * Return the iterator pointing to the last element
  367.  * @param i An xcb_shape_kind_iterator_t
  368.  * @return  The iterator pointing to the last element
  369.  *
  370.  * Set the current element in the iterator to the last element.
  371.  * The member rem is set to 0. The member data points to the
  372.  * last element.
  373.  */
  374.  
  375. /*****************************************************************************
  376.  **
  377.  ** xcb_generic_iterator_t xcb_shape_kind_end
  378.  ** 
  379.  ** @param xcb_shape_kind_iterator_t i
  380.  ** @returns xcb_generic_iterator_t
  381.  **
  382.  *****************************************************************************/
  383.  
  384. xcb_generic_iterator_t
  385. xcb_shape_kind_end (xcb_shape_kind_iterator_t i  /**< */);
  386.  
  387. /**
  388.  * Delivers a request to the X server
  389.  * @param c The connection
  390.  * @return A cookie
  391.  *
  392.  * Delivers a request to the X server.
  393.  * 
  394.  */
  395.  
  396. /*****************************************************************************
  397.  **
  398.  ** xcb_shape_query_version_cookie_t xcb_shape_query_version
  399.  ** 
  400.  ** @param xcb_connection_t *c
  401.  ** @returns xcb_shape_query_version_cookie_t
  402.  **
  403.  *****************************************************************************/
  404.  
  405. xcb_shape_query_version_cookie_t
  406. xcb_shape_query_version (xcb_connection_t *c  /**< */);
  407.  
  408. /**
  409.  * Delivers a request to the X server
  410.  * @param c The connection
  411.  * @return A cookie
  412.  *
  413.  * Delivers a request to the X server.
  414.  * 
  415.  * This form can be used only if the request will cause
  416.  * a reply to be generated. Any returned error will be
  417.  * placed in the event queue.
  418.  */
  419.  
  420. /*****************************************************************************
  421.  **
  422.  ** xcb_shape_query_version_cookie_t xcb_shape_query_version_unchecked
  423.  ** 
  424.  ** @param xcb_connection_t *c
  425.  ** @returns xcb_shape_query_version_cookie_t
  426.  **
  427.  *****************************************************************************/
  428.  
  429. xcb_shape_query_version_cookie_t
  430. xcb_shape_query_version_unchecked (xcb_connection_t *c  /**< */);
  431.  
  432. /**
  433.  * Return the reply
  434.  * @param c      The connection
  435.  * @param cookie The cookie
  436.  * @param e      The xcb_generic_error_t supplied
  437.  *
  438.  * Returns the reply of the request asked by
  439.  * 
  440.  * The parameter @p e supplied to this function must be NULL if
  441.  * xcb_shape_query_version_unchecked(). is used.
  442.  * Otherwise, it stores the error if any.
  443.  */
  444.  
  445. /*****************************************************************************
  446.  **
  447.  ** xcb_shape_query_version_reply_t * xcb_shape_query_version_reply
  448.  ** 
  449.  ** @param xcb_connection_t                  *c
  450.  ** @param xcb_shape_query_version_cookie_t   cookie
  451.  ** @param xcb_generic_error_t              **e
  452.  ** @returns xcb_shape_query_version_reply_t *
  453.  **
  454.  *****************************************************************************/
  455.  
  456. xcb_shape_query_version_reply_t *
  457. xcb_shape_query_version_reply (xcb_connection_t                  *c  /**< */,
  458.                                xcb_shape_query_version_cookie_t   cookie  /**< */,
  459.                                xcb_generic_error_t              **e  /**< */);
  460.  
  461. /**
  462.  * Delivers a request to the X server
  463.  * @param c The connection
  464.  * @return A cookie
  465.  *
  466.  * Delivers a request to the X server.
  467.  * 
  468.  * This form can be used only if the request will not cause
  469.  * a reply to be generated. Any returned error will be
  470.  * saved for handling by xcb_request_check().
  471.  */
  472.  
  473. /*****************************************************************************
  474.  **
  475.  ** xcb_void_cookie_t xcb_shape_rectangles_checked
  476.  ** 
  477.  ** @param xcb_connection_t      *c
  478.  ** @param xcb_shape_op_t         operation
  479.  ** @param xcb_shape_kind_t       destination_kind
  480.  ** @param uint8_t                ordering
  481.  ** @param xcb_window_t           destination_window
  482.  ** @param int16_t                x_offset
  483.  ** @param int16_t                y_offset
  484.  ** @param uint32_t               rectangles_len
  485.  ** @param const xcb_rectangle_t *rectangles
  486.  ** @returns xcb_void_cookie_t
  487.  **
  488.  *****************************************************************************/
  489.  
  490. xcb_void_cookie_t
  491. xcb_shape_rectangles_checked (xcb_connection_t      *c  /**< */,
  492.                               xcb_shape_op_t         operation  /**< */,
  493.                               xcb_shape_kind_t       destination_kind  /**< */,
  494.                               uint8_t                ordering  /**< */,
  495.                               xcb_window_t           destination_window  /**< */,
  496.                               int16_t                x_offset  /**< */,
  497.                               int16_t                y_offset  /**< */,
  498.                               uint32_t               rectangles_len  /**< */,
  499.                               const xcb_rectangle_t *rectangles  /**< */);
  500.  
  501. /**
  502.  * Delivers a request to the X server
  503.  * @param c The connection
  504.  * @return A cookie
  505.  *
  506.  * Delivers a request to the X server.
  507.  * 
  508.  */
  509.  
  510. /*****************************************************************************
  511.  **
  512.  ** xcb_void_cookie_t xcb_shape_rectangles
  513.  ** 
  514.  ** @param xcb_connection_t      *c
  515.  ** @param xcb_shape_op_t         operation
  516.  ** @param xcb_shape_kind_t       destination_kind
  517.  ** @param uint8_t                ordering
  518.  ** @param xcb_window_t           destination_window
  519.  ** @param int16_t                x_offset
  520.  ** @param int16_t                y_offset
  521.  ** @param uint32_t               rectangles_len
  522.  ** @param const xcb_rectangle_t *rectangles
  523.  ** @returns xcb_void_cookie_t
  524.  **
  525.  *****************************************************************************/
  526.  
  527. xcb_void_cookie_t
  528. xcb_shape_rectangles (xcb_connection_t      *c  /**< */,
  529.                       xcb_shape_op_t         operation  /**< */,
  530.                       xcb_shape_kind_t       destination_kind  /**< */,
  531.                       uint8_t                ordering  /**< */,
  532.                       xcb_window_t           destination_window  /**< */,
  533.                       int16_t                x_offset  /**< */,
  534.                       int16_t                y_offset  /**< */,
  535.                       uint32_t               rectangles_len  /**< */,
  536.                       const xcb_rectangle_t *rectangles  /**< */);
  537.  
  538. /**
  539.  * Delivers a request to the X server
  540.  * @param c The connection
  541.  * @return A cookie
  542.  *
  543.  * Delivers a request to the X server.
  544.  * 
  545.  * This form can be used only if the request will not cause
  546.  * a reply to be generated. Any returned error will be
  547.  * saved for handling by xcb_request_check().
  548.  */
  549.  
  550. /*****************************************************************************
  551.  **
  552.  ** xcb_void_cookie_t xcb_shape_mask_checked
  553.  ** 
  554.  ** @param xcb_connection_t *c
  555.  ** @param xcb_shape_op_t    operation
  556.  ** @param xcb_shape_kind_t  destination_kind
  557.  ** @param xcb_window_t      destination_window
  558.  ** @param int16_t           x_offset
  559.  ** @param int16_t           y_offset
  560.  ** @param xcb_pixmap_t      source_bitmap
  561.  ** @returns xcb_void_cookie_t
  562.  **
  563.  *****************************************************************************/
  564.  
  565. xcb_void_cookie_t
  566. xcb_shape_mask_checked (xcb_connection_t *c  /**< */,
  567.                         xcb_shape_op_t    operation  /**< */,
  568.                         xcb_shape_kind_t  destination_kind  /**< */,
  569.                         xcb_window_t      destination_window  /**< */,
  570.                         int16_t           x_offset  /**< */,
  571.                         int16_t           y_offset  /**< */,
  572.                         xcb_pixmap_t      source_bitmap  /**< */);
  573.  
  574. /**
  575.  * Delivers a request to the X server
  576.  * @param c The connection
  577.  * @return A cookie
  578.  *
  579.  * Delivers a request to the X server.
  580.  * 
  581.  */
  582.  
  583. /*****************************************************************************
  584.  **
  585.  ** xcb_void_cookie_t xcb_shape_mask
  586.  ** 
  587.  ** @param xcb_connection_t *c
  588.  ** @param xcb_shape_op_t    operation
  589.  ** @param xcb_shape_kind_t  destination_kind
  590.  ** @param xcb_window_t      destination_window
  591.  ** @param int16_t           x_offset
  592.  ** @param int16_t           y_offset
  593.  ** @param xcb_pixmap_t      source_bitmap
  594.  ** @returns xcb_void_cookie_t
  595.  **
  596.  *****************************************************************************/
  597.  
  598. xcb_void_cookie_t
  599. xcb_shape_mask (xcb_connection_t *c  /**< */,
  600.                 xcb_shape_op_t    operation  /**< */,
  601.                 xcb_shape_kind_t  destination_kind  /**< */,
  602.                 xcb_window_t      destination_window  /**< */,
  603.                 int16_t           x_offset  /**< */,
  604.                 int16_t           y_offset  /**< */,
  605.                 xcb_pixmap_t      source_bitmap  /**< */);
  606.  
  607. /**
  608.  * Delivers a request to the X server
  609.  * @param c The connection
  610.  * @return A cookie
  611.  *
  612.  * Delivers a request to the X server.
  613.  * 
  614.  * This form can be used only if the request will not cause
  615.  * a reply to be generated. Any returned error will be
  616.  * saved for handling by xcb_request_check().
  617.  */
  618.  
  619. /*****************************************************************************
  620.  **
  621.  ** xcb_void_cookie_t xcb_shape_combine_checked
  622.  ** 
  623.  ** @param xcb_connection_t *c
  624.  ** @param xcb_shape_op_t    operation
  625.  ** @param xcb_shape_kind_t  destination_kind
  626.  ** @param xcb_shape_kind_t  source_kind
  627.  ** @param xcb_window_t      destination_window
  628.  ** @param int16_t           x_offset
  629.  ** @param int16_t           y_offset
  630.  ** @param xcb_window_t      source_window
  631.  ** @returns xcb_void_cookie_t
  632.  **
  633.  *****************************************************************************/
  634.  
  635. xcb_void_cookie_t
  636. xcb_shape_combine_checked (xcb_connection_t *c  /**< */,
  637.                            xcb_shape_op_t    operation  /**< */,
  638.                            xcb_shape_kind_t  destination_kind  /**< */,
  639.                            xcb_shape_kind_t  source_kind  /**< */,
  640.                            xcb_window_t      destination_window  /**< */,
  641.                            int16_t           x_offset  /**< */,
  642.                            int16_t           y_offset  /**< */,
  643.                            xcb_window_t      source_window  /**< */);
  644.  
  645. /**
  646.  * Delivers a request to the X server
  647.  * @param c The connection
  648.  * @return A cookie
  649.  *
  650.  * Delivers a request to the X server.
  651.  * 
  652.  */
  653.  
  654. /*****************************************************************************
  655.  **
  656.  ** xcb_void_cookie_t xcb_shape_combine
  657.  ** 
  658.  ** @param xcb_connection_t *c
  659.  ** @param xcb_shape_op_t    operation
  660.  ** @param xcb_shape_kind_t  destination_kind
  661.  ** @param xcb_shape_kind_t  source_kind
  662.  ** @param xcb_window_t      destination_window
  663.  ** @param int16_t           x_offset
  664.  ** @param int16_t           y_offset
  665.  ** @param xcb_window_t      source_window
  666.  ** @returns xcb_void_cookie_t
  667.  **
  668.  *****************************************************************************/
  669.  
  670. xcb_void_cookie_t
  671. xcb_shape_combine (xcb_connection_t *c  /**< */,
  672.                    xcb_shape_op_t    operation  /**< */,
  673.                    xcb_shape_kind_t  destination_kind  /**< */,
  674.                    xcb_shape_kind_t  source_kind  /**< */,
  675.                    xcb_window_t      destination_window  /**< */,
  676.                    int16_t           x_offset  /**< */,
  677.                    int16_t           y_offset  /**< */,
  678.                    xcb_window_t      source_window  /**< */);
  679.  
  680. /**
  681.  * Delivers a request to the X server
  682.  * @param c The connection
  683.  * @return A cookie
  684.  *
  685.  * Delivers a request to the X server.
  686.  * 
  687.  * This form can be used only if the request will not cause
  688.  * a reply to be generated. Any returned error will be
  689.  * saved for handling by xcb_request_check().
  690.  */
  691.  
  692. /*****************************************************************************
  693.  **
  694.  ** xcb_void_cookie_t xcb_shape_offset_checked
  695.  ** 
  696.  ** @param xcb_connection_t *c
  697.  ** @param xcb_shape_kind_t  destination_kind
  698.  ** @param xcb_window_t      destination_window
  699.  ** @param int16_t           x_offset
  700.  ** @param int16_t           y_offset
  701.  ** @returns xcb_void_cookie_t
  702.  **
  703.  *****************************************************************************/
  704.  
  705. xcb_void_cookie_t
  706. xcb_shape_offset_checked (xcb_connection_t *c  /**< */,
  707.                           xcb_shape_kind_t  destination_kind  /**< */,
  708.                           xcb_window_t      destination_window  /**< */,
  709.                           int16_t           x_offset  /**< */,
  710.                           int16_t           y_offset  /**< */);
  711.  
  712. /**
  713.  * Delivers a request to the X server
  714.  * @param c The connection
  715.  * @return A cookie
  716.  *
  717.  * Delivers a request to the X server.
  718.  * 
  719.  */
  720.  
  721. /*****************************************************************************
  722.  **
  723.  ** xcb_void_cookie_t xcb_shape_offset
  724.  ** 
  725.  ** @param xcb_connection_t *c
  726.  ** @param xcb_shape_kind_t  destination_kind
  727.  ** @param xcb_window_t      destination_window
  728.  ** @param int16_t           x_offset
  729.  ** @param int16_t           y_offset
  730.  ** @returns xcb_void_cookie_t
  731.  **
  732.  *****************************************************************************/
  733.  
  734. xcb_void_cookie_t
  735. xcb_shape_offset (xcb_connection_t *c  /**< */,
  736.                   xcb_shape_kind_t  destination_kind  /**< */,
  737.                   xcb_window_t      destination_window  /**< */,
  738.                   int16_t           x_offset  /**< */,
  739.                   int16_t           y_offset  /**< */);
  740.  
  741. /**
  742.  * Delivers a request to the X server
  743.  * @param c The connection
  744.  * @return A cookie
  745.  *
  746.  * Delivers a request to the X server.
  747.  * 
  748.  */
  749.  
  750. /*****************************************************************************
  751.  **
  752.  ** xcb_shape_query_extents_cookie_t xcb_shape_query_extents
  753.  ** 
  754.  ** @param xcb_connection_t *c
  755.  ** @param xcb_window_t      destination_window
  756.  ** @returns xcb_shape_query_extents_cookie_t
  757.  **
  758.  *****************************************************************************/
  759.  
  760. xcb_shape_query_extents_cookie_t
  761. xcb_shape_query_extents (xcb_connection_t *c  /**< */,
  762.                          xcb_window_t      destination_window  /**< */);
  763.  
  764. /**
  765.  * Delivers a request to the X server
  766.  * @param c The connection
  767.  * @return A cookie
  768.  *
  769.  * Delivers a request to the X server.
  770.  * 
  771.  * This form can be used only if the request will cause
  772.  * a reply to be generated. Any returned error will be
  773.  * placed in the event queue.
  774.  */
  775.  
  776. /*****************************************************************************
  777.  **
  778.  ** xcb_shape_query_extents_cookie_t xcb_shape_query_extents_unchecked
  779.  ** 
  780.  ** @param xcb_connection_t *c
  781.  ** @param xcb_window_t      destination_window
  782.  ** @returns xcb_shape_query_extents_cookie_t
  783.  **
  784.  *****************************************************************************/
  785.  
  786. xcb_shape_query_extents_cookie_t
  787. xcb_shape_query_extents_unchecked (xcb_connection_t *c  /**< */,
  788.                                    xcb_window_t      destination_window  /**< */);
  789.  
  790. /**
  791.  * Return the reply
  792.  * @param c      The connection
  793.  * @param cookie The cookie
  794.  * @param e      The xcb_generic_error_t supplied
  795.  *
  796.  * Returns the reply of the request asked by
  797.  * 
  798.  * The parameter @p e supplied to this function must be NULL if
  799.  * xcb_shape_query_extents_unchecked(). is used.
  800.  * Otherwise, it stores the error if any.
  801.  */
  802.  
  803. /*****************************************************************************
  804.  **
  805.  ** xcb_shape_query_extents_reply_t * xcb_shape_query_extents_reply
  806.  ** 
  807.  ** @param xcb_connection_t                  *c
  808.  ** @param xcb_shape_query_extents_cookie_t   cookie
  809.  ** @param xcb_generic_error_t              **e
  810.  ** @returns xcb_shape_query_extents_reply_t *
  811.  **
  812.  *****************************************************************************/
  813.  
  814. xcb_shape_query_extents_reply_t *
  815. xcb_shape_query_extents_reply (xcb_connection_t                  *c  /**< */,
  816.                                xcb_shape_query_extents_cookie_t   cookie  /**< */,
  817.                                xcb_generic_error_t              **e  /**< */);
  818.  
  819. /**
  820.  * Delivers a request to the X server
  821.  * @param c The connection
  822.  * @return A cookie
  823.  *
  824.  * Delivers a request to the X server.
  825.  * 
  826.  * This form can be used only if the request will not cause
  827.  * a reply to be generated. Any returned error will be
  828.  * saved for handling by xcb_request_check().
  829.  */
  830.  
  831. /*****************************************************************************
  832.  **
  833.  ** xcb_void_cookie_t xcb_shape_select_input_checked
  834.  ** 
  835.  ** @param xcb_connection_t *c
  836.  ** @param xcb_window_t      destination_window
  837.  ** @param uint8_t           enable
  838.  ** @returns xcb_void_cookie_t
  839.  **
  840.  *****************************************************************************/
  841.  
  842. xcb_void_cookie_t
  843. xcb_shape_select_input_checked (xcb_connection_t *c  /**< */,
  844.                                 xcb_window_t      destination_window  /**< */,
  845.                                 uint8_t           enable  /**< */);
  846.  
  847. /**
  848.  * Delivers a request to the X server
  849.  * @param c The connection
  850.  * @return A cookie
  851.  *
  852.  * Delivers a request to the X server.
  853.  * 
  854.  */
  855.  
  856. /*****************************************************************************
  857.  **
  858.  ** xcb_void_cookie_t xcb_shape_select_input
  859.  ** 
  860.  ** @param xcb_connection_t *c
  861.  ** @param xcb_window_t      destination_window
  862.  ** @param uint8_t           enable
  863.  ** @returns xcb_void_cookie_t
  864.  **
  865.  *****************************************************************************/
  866.  
  867. xcb_void_cookie_t
  868. xcb_shape_select_input (xcb_connection_t *c  /**< */,
  869.                         xcb_window_t      destination_window  /**< */,
  870.                         uint8_t           enable  /**< */);
  871.  
  872. /**
  873.  * Delivers a request to the X server
  874.  * @param c The connection
  875.  * @return A cookie
  876.  *
  877.  * Delivers a request to the X server.
  878.  * 
  879.  */
  880.  
  881. /*****************************************************************************
  882.  **
  883.  ** xcb_shape_input_selected_cookie_t xcb_shape_input_selected
  884.  ** 
  885.  ** @param xcb_connection_t *c
  886.  ** @param xcb_window_t      destination_window
  887.  ** @returns xcb_shape_input_selected_cookie_t
  888.  **
  889.  *****************************************************************************/
  890.  
  891. xcb_shape_input_selected_cookie_t
  892. xcb_shape_input_selected (xcb_connection_t *c  /**< */,
  893.                           xcb_window_t      destination_window  /**< */);
  894.  
  895. /**
  896.  * Delivers a request to the X server
  897.  * @param c The connection
  898.  * @return A cookie
  899.  *
  900.  * Delivers a request to the X server.
  901.  * 
  902.  * This form can be used only if the request will cause
  903.  * a reply to be generated. Any returned error will be
  904.  * placed in the event queue.
  905.  */
  906.  
  907. /*****************************************************************************
  908.  **
  909.  ** xcb_shape_input_selected_cookie_t xcb_shape_input_selected_unchecked
  910.  ** 
  911.  ** @param xcb_connection_t *c
  912.  ** @param xcb_window_t      destination_window
  913.  ** @returns xcb_shape_input_selected_cookie_t
  914.  **
  915.  *****************************************************************************/
  916.  
  917. xcb_shape_input_selected_cookie_t
  918. xcb_shape_input_selected_unchecked (xcb_connection_t *c  /**< */,
  919.                                     xcb_window_t      destination_window  /**< */);
  920.  
  921. /**
  922.  * Return the reply
  923.  * @param c      The connection
  924.  * @param cookie The cookie
  925.  * @param e      The xcb_generic_error_t supplied
  926.  *
  927.  * Returns the reply of the request asked by
  928.  * 
  929.  * The parameter @p e supplied to this function must be NULL if
  930.  * xcb_shape_input_selected_unchecked(). is used.
  931.  * Otherwise, it stores the error if any.
  932.  */
  933.  
  934. /*****************************************************************************
  935.  **
  936.  ** xcb_shape_input_selected_reply_t * xcb_shape_input_selected_reply
  937.  ** 
  938.  ** @param xcb_connection_t                   *c
  939.  ** @param xcb_shape_input_selected_cookie_t   cookie
  940.  ** @param xcb_generic_error_t               **e
  941.  ** @returns xcb_shape_input_selected_reply_t *
  942.  **
  943.  *****************************************************************************/
  944.  
  945. xcb_shape_input_selected_reply_t *
  946. xcb_shape_input_selected_reply (xcb_connection_t                   *c  /**< */,
  947.                                 xcb_shape_input_selected_cookie_t   cookie  /**< */,
  948.                                 xcb_generic_error_t               **e  /**< */);
  949.  
  950. /**
  951.  * Delivers a request to the X server
  952.  * @param c The connection
  953.  * @return A cookie
  954.  *
  955.  * Delivers a request to the X server.
  956.  * 
  957.  */
  958.  
  959. /*****************************************************************************
  960.  **
  961.  ** xcb_shape_get_rectangles_cookie_t xcb_shape_get_rectangles
  962.  ** 
  963.  ** @param xcb_connection_t *c
  964.  ** @param xcb_window_t      window
  965.  ** @param xcb_shape_kind_t  source_kind
  966.  ** @returns xcb_shape_get_rectangles_cookie_t
  967.  **
  968.  *****************************************************************************/
  969.  
  970. xcb_shape_get_rectangles_cookie_t
  971. xcb_shape_get_rectangles (xcb_connection_t *c  /**< */,
  972.                           xcb_window_t      window  /**< */,
  973.                           xcb_shape_kind_t  source_kind  /**< */);
  974.  
  975. /**
  976.  * Delivers a request to the X server
  977.  * @param c The connection
  978.  * @return A cookie
  979.  *
  980.  * Delivers a request to the X server.
  981.  * 
  982.  * This form can be used only if the request will cause
  983.  * a reply to be generated. Any returned error will be
  984.  * placed in the event queue.
  985.  */
  986.  
  987. /*****************************************************************************
  988.  **
  989.  ** xcb_shape_get_rectangles_cookie_t xcb_shape_get_rectangles_unchecked
  990.  ** 
  991.  ** @param xcb_connection_t *c
  992.  ** @param xcb_window_t      window
  993.  ** @param xcb_shape_kind_t  source_kind
  994.  ** @returns xcb_shape_get_rectangles_cookie_t
  995.  **
  996.  *****************************************************************************/
  997.  
  998. xcb_shape_get_rectangles_cookie_t
  999. xcb_shape_get_rectangles_unchecked (xcb_connection_t *c  /**< */,
  1000.                                     xcb_window_t      window  /**< */,
  1001.                                     xcb_shape_kind_t  source_kind  /**< */);
  1002.  
  1003.  
  1004. /*****************************************************************************
  1005.  **
  1006.  ** xcb_rectangle_t * xcb_shape_get_rectangles_rectangles
  1007.  ** 
  1008.  ** @param const xcb_shape_get_rectangles_reply_t *R
  1009.  ** @returns xcb_rectangle_t *
  1010.  **
  1011.  *****************************************************************************/
  1012.  
  1013. xcb_rectangle_t *
  1014. xcb_shape_get_rectangles_rectangles (const xcb_shape_get_rectangles_reply_t *R  /**< */);
  1015.  
  1016.  
  1017. /*****************************************************************************
  1018.  **
  1019.  ** int xcb_shape_get_rectangles_rectangles_length
  1020.  ** 
  1021.  ** @param const xcb_shape_get_rectangles_reply_t *R
  1022.  ** @returns int
  1023.  **
  1024.  *****************************************************************************/
  1025.  
  1026. int
  1027. xcb_shape_get_rectangles_rectangles_length (const xcb_shape_get_rectangles_reply_t *R  /**< */);
  1028.  
  1029.  
  1030. /*****************************************************************************
  1031.  **
  1032.  ** xcb_rectangle_iterator_t xcb_shape_get_rectangles_rectangles_iterator
  1033.  ** 
  1034.  ** @param const xcb_shape_get_rectangles_reply_t *R
  1035.  ** @returns xcb_rectangle_iterator_t
  1036.  **
  1037.  *****************************************************************************/
  1038.  
  1039. xcb_rectangle_iterator_t
  1040. xcb_shape_get_rectangles_rectangles_iterator (const xcb_shape_get_rectangles_reply_t *R  /**< */);
  1041.  
  1042. /**
  1043.  * Return the reply
  1044.  * @param c      The connection
  1045.  * @param cookie The cookie
  1046.  * @param e      The xcb_generic_error_t supplied
  1047.  *
  1048.  * Returns the reply of the request asked by
  1049.  * 
  1050.  * The parameter @p e supplied to this function must be NULL if
  1051.  * xcb_shape_get_rectangles_unchecked(). is used.
  1052.  * Otherwise, it stores the error if any.
  1053.  */
  1054.  
  1055. /*****************************************************************************
  1056.  **
  1057.  ** xcb_shape_get_rectangles_reply_t * xcb_shape_get_rectangles_reply
  1058.  ** 
  1059.  ** @param xcb_connection_t                   *c
  1060.  ** @param xcb_shape_get_rectangles_cookie_t   cookie
  1061.  ** @param xcb_generic_error_t               **e
  1062.  ** @returns xcb_shape_get_rectangles_reply_t *
  1063.  **
  1064.  *****************************************************************************/
  1065.  
  1066. xcb_shape_get_rectangles_reply_t *
  1067. xcb_shape_get_rectangles_reply (xcb_connection_t                   *c  /**< */,
  1068.                                 xcb_shape_get_rectangles_cookie_t   cookie  /**< */,
  1069.                                 xcb_generic_error_t               **e  /**< */);
  1070.  
  1071.  
  1072. #endif
  1073.  
  1074. /**
  1075.  * @}
  1076.  */
  1077.